﻿using System;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.nodes.hive;

namespace SharpSqlAnalyzer.stmt.hive
{
	// Token: 0x020001CA RID: 458
	public class THiveShowRoleGrant : TCustomSqlStatement
	{
		// Token: 0x06000F5B RID: 3931 RVA: 0x0030B6DC File Offset: 0x003098DC
		public THiveShowRoleGrant(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.ssthiveShowRoleGrants;
		}

		// Token: 0x170002E0 RID: 736
		// (get) Token: 0x06000F5C RID: 3932 RVA: 0x0030B6F0 File Offset: 0x003098F0
		// (set) Token: 0x06000F5D RID: 3933 RVA: 0x0030B6F8 File Offset: 0x003098F8
		public virtual THivePrincipalName PrincipalName
		{
			get
			{
				return this.principalName;
			}
			set
			{
				this.principalName = value;
			}
		}

		// Token: 0x06000F5E RID: 3934 RVA: 0x0030B701 File Offset: 0x00309901
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			base.doParseStatement(psql);
			this.principalName = ((THiveShowRoleGrantSqlNode)this.rootNode).PrincipalName;
			return 0;
		}

		// Token: 0x06000F5F RID: 3935 RVA: 0x0030B72C File Offset: 0x0030992C
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000F60 RID: 3936 RVA: 0x0030B73C File Offset: 0x0030993C
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001372 RID: 4978
		private THivePrincipalName principalName;
	}
}
